package com.cangshukj.junong.domain;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import com.cangshukj.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.cangshukj.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 农产品供求信息对象 product_trade
 * 
 * @author wangjie
 * @date 2025-04-01
 */
@ApiModel("农产品供求信息")
public class ProductTrade extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 供求信息ID */
    @ApiModelProperty("供求信息ID")
    private String id;

    /** 联系人姓名 */
    @ApiModelProperty("联系人姓名")
    @Excel(name = "联系人姓名")
    private String linkman;

    /** 联系电话 */
    @ApiModelProperty("联系电话")
    @Excel(name = "联系电话")
    private String phone;

    /** 农产品名称 */
    @ApiModelProperty("农产品名称")
    @Excel(name = "农产品名称")
    private String title;

    /** 农产品介绍 */
    @ApiModelProperty("农产品介绍")
    @Excel(name = "农产品介绍")
    private String contents;

    /** 类型：0供应、1求购 */
    @ApiModelProperty("类型：0供应、1求购")
    @Excel(name = "类型：0供应、1求购")
    private Integer tradeType;

    /** 审核状态：0隐藏、1显示 */
    @ApiModelProperty("审核状态：0隐藏、1显示")
    @Excel(name = "审核状态：0隐藏、1显示")
    private Integer auditStatus;

    /** 审核人ID */
    @ApiModelProperty("审核人ID ")
    @Excel(name = "审核人ID")
    private String auditUserid;

    /** 审核人名称 */
    @ApiModelProperty("审核人名称")
    @Excel(name = "审核人名称")
    private String auditUsername;

    /** 审核时间 */
    @ApiModelProperty("审核时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date auditTime;

    /** 审核驳回备注 */
    @ApiModelProperty("审核驳回备注")
    @Excel(name = "审核驳回备注")
    private String auditRemark;
    @ApiModelProperty("土地新闻信息图片")
    private List<LandPics> landNews = new ArrayList<>();

    public List<LandPics> getLandNews() {
        return landNews;
    }

    public void setLandNews(List<LandPics> landNews) {
        this.landNews = landNews;
    }

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }
    public void setLinkman(String linkman) 
    {
        this.linkman = linkman;
    }

    public String getLinkman() 
    {
        return linkman;
    }
    public void setPhone(String phone) 
    {
        this.phone = phone;
    }

    public String getPhone() 
    {
        return phone;
    }
    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }
    public void setContents(String contents) 
    {
        this.contents = contents;
    }

    public String getContents() 
    {
        return contents;
    }
    public void setTradeType(Integer tradeType) 
    {
        this.tradeType = tradeType;
    }

    public Integer getTradeType() 
    {
        return tradeType;
    }
    public void setAuditStatus(Integer auditStatus) 
    {
        this.auditStatus = auditStatus;
    }

    public Integer getAuditStatus() 
    {
        return auditStatus;
    }
    public void setAuditUserid(String auditUserid) 
    {
        this.auditUserid = auditUserid;
    }

    public String getAuditUserid() 
    {
        return auditUserid;
    }
    public void setAuditUsername(String auditUsername) 
    {
        this.auditUsername = auditUsername;
    }

    public String getAuditUsername() 
    {
        return auditUsername;
    }
    public void setAuditTime(Date auditTime) 
    {
        this.auditTime = auditTime;
    }

    public Date getAuditTime() 
    {
        return auditTime;
    }
    public void setAuditRemark(String auditRemark) 
    {
        this.auditRemark = auditRemark;
    }

    public String getAuditRemark() 
    {
        return auditRemark;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("linkman", getLinkman())
            .append("phone", getPhone())
            .append("title", getTitle())
            .append("contents", getContents())
            .append("tradeType", getTradeType())
            .append("auditStatus", getAuditStatus())
            .append("auditUserid", getAuditUserid())
            .append("auditUsername", getAuditUsername())
            .append("auditTime", getAuditTime())
            .append("auditRemark", getAuditRemark())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
